Intra prediction method and apparatus, and image encoding/decoding method and apparatus using same

ABSTRACT

The present disclosure relates to an intra prediction method and apparatus and an image encoding/decoding method and apparatus using the same. The disclosure provides the intra prediction apparatus that predicts the pixel values of respective pixels in a current block by weight-averaging the pixel values of one or more adjacent pixels in neighboring blocks to the current block according to the distances between each pixel in the current block and the adjacent pixel(s). According to the disclosure, the current block to be encoded can be predicted more accurately so that the encoding efficiency is improved by reducing the difference between the original block and the predicted block, and thereby video compression efficiency can be improved.

TECHNICAL FIELD

The present disclosure relates to a method and apparatus for determiningan intra prediction mode, and a method and apparatus forencoding/decoding video using the same. More particularly, the presentdisclosure relates to an intra prediction method and apparatus forcarrying out prediction encoding and decoding of a current block of animage from its neighboring block in a way to minimize the differencebetween the original current block and a predicted current block, and toan image encoding/decoding method and apparatus using the same.

Background Art

The statements in this section merely provide background informationrelated to the present disclosure and may not constitute prior art.

Moving Picture Experts Group (MPEG) and Video Coding Experts Group(VCEG) have developed an improved and excellent video compressiontechnology over prior MPEG-4 Part 2 and H.263 standards. The newstandard is called H.264/AVC (Advanced Video Coding) and was releasedsimultaneously as MPEG-4 Part 10 AVC and ITU-T Recommendation H.264.H.264/AVC (shortened as H.264 hereinafter) differently uses a spatialpredictive coding method relative to existing video coding-relatedinternational standards of MPEG-1, MPEG-2, MPEG-4 Part2 Visual, etc.

Conventional methods use “intra prediction” for coefficients transformedin Discrete Cosine Transform Domain (or DCT Transform Domain) to seekhigher encoding efficiency resulting in degradation of the subjectivevideo quality at low band transmission bit rates. In contrast, H.264adopts the method of encoding based on a spatial intra prediction in aspatial domain rather than in a transform domain.

Encoders using an encoding method based on the conventional spatialintra predictions take information on the previously encoded andreconstructed block to predict current block information therefrom,encode information on just the difference of the predicted block fromthe original block to be encoded, and transmit the encoded informationto a decoder. At this time, the encoder may transmit parameters neededfor prediction of the block information to the decoder, or the encoderand decoder may be synchronized so that they share the needed parametersfor the decoder to predict the block information. On the other hand, thedesired block to be currently decoded is generated and reconstructed byfirst predicting its neighboring blocks that are completely decoded andreconstructed and then obtaining the sum of difference information orresidual data transmitted from the encoder and the predicted neighboringblock information. Then, also, if the parameters needed for theprediction are transmitted from the encoder, the decoder uses the sameto predict the neighboring block information.

There are different intra predictions such as an intra_(—)4×4prediction, intra_(—)16×16 prediction, and intra_(—)8×8 prediction amongothers, where the respective intra predictions include a plurality ofprediction modes.

FIG. 1 is a exemplary diagram showing conventional nine 4×4 intraprediction modes.

Referring to FIG. 1, the intra_(—)4×4 prediction has nine predictionmodes which include a vertical mode, horizontal mode, direct current(DC) mode, diagonal down-left mode, diagonal down-right mode,vertical-right mode, horizontal-down mode, vertical-left mode andhorizontal-up mode.

FIG. 2 is an exemplary diagram showing conventional four 16×16 intraprediction modes.

Referring to FIG. 2, the intra_(—)16×16 prediction has four predictionmodes which include a vertical mode, horizontal mode, DC mode and planemode. The intra_(—)8×8 prediction also has four modes similar to theintra_(—)16×16 prediction.

In an intra prediction that uses the DC mode as the prediction mode (orin a ‘DC mode prediction’ in short), the result is an average valueobtained in a unit of block. Here, the average value means an average of8 pixels (for the case of intra_(—)4×4 prediction) from the currentblock's left side 4 pixels plus the current block's upper side 4 pixelsor an average of 32 pixels (for the case of intra_(—)16×16 prediction)from the current block's left side 16 pixels plus the current block'supper side 16 pixels. Therefore, in performing the DC mode prediction,the neighboring blocks to the current block are averaged for predictingall of the 4×4 pixels or the 16×16 pixels.

Hence, regardless of the type of prediction which is intra_(—)4×4prediction or intra_(—)16×16 prediction or another, the predictionvalues or predictors are the same with respect to the current block's 16pixels for the case of intra_(—)4×4 prediction or 256 pixels for thecase of intra_(—)16×16 prediction. This lowers the accuracy ofpredicting the current block to cause a decrease of coding efficiency orcompression efficiency.

In addition, the dropped prediction accuracy will increase thedifferential value between the original block and the predicted blockwhereby the above DC mode prediction produces a greater amount of thedifference information and a decline in the video compression efficiencydisadvantageously.

Disclosure Technical Problem

Therefore, the present disclosure has been made in view of the abovementioned problems to principally improve the video compressionefficiency by closing the gap between the original block and thepredicted block in performing the intra predictions for predicting thecurrent video block.

Technical Solution

An aspect of the present disclosure provides an intra predictionapparatus including a calculator for calculating weighted pixel valuesby variably applying weights to pixel values of respective one or moreadjacent pixels in a neighboring block to a current block depending oncalculations of the distances between respective pixels in the currentblock and the respective one or more adjacent pixels; and a calculatorfor calculating predicted pixel values of the respective pixels in thecurrent block by averaging the weighted pixel values of the one or moreadjacent pixels with respect to the respective pixels in the currentblock.

Another aspect of the present disclosure provides an intra predictionmethod including selecting one or more adjacent pixels in a neighboringblock to a current block in a video; calculating the distances betweenrespective pixels in the current block and the respective one or moreadjacent pixels; calculating weighted pixel values by variably settingand applying weights to pixel values of the respective one or moreadjacent pixels depending on the distances; and calculating predictedpixel values of the respective pixels in the current block by averagingthe weighted pixel values of the one or more adjacent pixels withrespect to the respective pixels in the current block.

Yet another aspect of the present disclosure provides a video encodingapparatus including an intra predictor for predicting a current block bycalculating weighted pixel values respectively by variably applyingweights to pixel values of one or more adjacent pixels in a neighboringblock to the current block depending on the distances between respectivepixels in the current block and the respective one or more adjacentpixels, and calculating predicted pixel values of the respective pixelsin the current block through averaging the weighted pixel values of theone or more adjacent pixels with respect to the respective pixels in thecurrent block; a subtractor for generating a residual signal bycalculating a difference between the original pixel value of therespective pixels in the current block and the predicted pixel value ofthe respective pixels in the current block; a transformer fortransforming the residual signal into a frequency domain; a quantizerfor quantizing the transformed residual signal; and an encoder forencoding the quantized residual signal into a bitstream.

Yet another aspect of the present disclosure provides a video encodingmethod including: calculating weighted pixel values respectively byapplying weights to pixel values of one or more adjacent pixels in aneighboring block to a current block depending on the distances betweenrespective pixels in the current block and the respective one or moreadjacent pixels; intra predicting the current block by calculatingpredicted pixel values of the respective pixels in the current blockthrough averaging the weighted pixel values of the one or more adjacentpixels with respect to the respective pixels in the current block;generating a residual signal by calculating a difference between theoriginal pixel value of the respective pixels in the current block andthe predicted pixel value of the respective pixels in the current block;transforming the residual signal into a frequency domain; quantizing thetransformed residual signal; and encoding the quantized residual signalinto a bitstream.

Yet another aspect of the present disclosure provides a video decodingapparatus including a decoder for decoding a bitstream to extract aresidual signal; an inverse quantizer for inversely quantizing theextracted residual signal; an inverse transformer for inverselytransforming the inversely quantized residual signals into a timedomain; an intra predictor for predicting a current block by calculatingweighted pixel values respectively by applying weights to pixel valuesof one or more adjacent pixels in a neighboring block to the currentblock depending on the distances between respective pixels in thecurrent block and the respective one or more adjacent pixels, andcalculating predicted pixel values of the respective pixels in thecurrent block through averaging the weighted pixel values of the one ormore adjacent pixels with respect to the respective pixels in thecurrent block; and an adder for calculating a sum of the inverselytransformed residual signal and the predicted pixel values of therespective pixels in the current block in order to reconstruct originalpixels in the current block.

Yet another aspect of the present disclosure provides a video decodingmethod including extracting a residual signal from a bitstream bydecoding thereof; inversely quantizing the extracted residual signal;inversely transforming the inversely quantized residual signal into atime domain; calculating weighted pixel values respectively by applyingweights to pixel values of one or more adjacent pixels in a neighboringblock to a current block depending on the distances between respectivepixels in the current block and the respective one or more adjacentpixels; intra predicting the current block by calculating predictedpixel values of the respective pixels in the current block throughaveraging the weighted pixel values of the one or more adjacent pixelswith respect to the respective pixels in the current block; andreconstructing original pixels in the current block by calculating a sumof the inversely transformed residual signal and the predicted pixelvalues of the respective pixels in the current block.

Yet another aspect of the present disclosure provides an intraprediction apparatus for predicting pixel values of respective pixels ina current block by performing weighted averaging of pixels values of oneor more adjacent pixels in a neighboring block to the current blockdepending on the distances between respective pixels in the currentblock and the respective one or more adjacent pixels.

Advantageous Effects

As described above, the present disclosure is able to more accuratelypredict the current block to be encoded, to thereby close the gapbetween the original pixel and the predicted pixel toward a heightenedcoding efficiency and improved video compression efficiency.

DESCRIPTION OF DRAWINGS

FIG. 1 is an exemplary diagram showing conventional nine 4×4 intraprediction modes,

FIG. 2 is an exemplary diagram showing conventional four 16×16 intraprediction modes,

FIG. 3 is a block diagram of an electronic configuration of a videoencoding apparatus according to an aspect,

FIG. 4 is a block diagram of an electronic configuration of an intraprediction apparatus according to an aspect,

FIG. 5 is a flow diagram of an intra prediction method according to anaspect,

FIG. 6 is a flow diagram of a process of calculating weighted pixelvalues of adjacent pixels to respective pixels in a current blockaccording to an aspect,

FIG. 7 is a flow diagram of a video encoding method according to anaspect,

FIG. 8 is a block diagram of an electronic configuration of a videodecoding apparatus according to an aspect,

FIG. 9 is a flow diagram of a video decoding method according to anaspect, and

FIG. 10 is an exemplary diagram a process of predicting the currentblock by using a weighted value by pixel distances according to anaspect.

MODE FOR INVENTION

Hereinafter, aspects of the present disclosure will be described indetail with reference to the accompanying drawings. In the followingdescription, the same elements will be designated by the same referencenumerals although they are shown in different drawings. Further, in thefollowing description of the present disclosure, a detailed descriptionof known functions and configurations incorporated herein will beomitted when it may make the subject matter of the present disclosurerather unclear.

FIG. 3 is a block diagram of an electronic configuration of a videoencoding apparatus 300 according to an aspect of the present disclosure.

Video encoding apparatus 300 of this aspect is adapted to predict avideo current block using one or more of its neighboring blocks in orderto encode the video, and may include an intra predictor 310, asubtractor 320, a transformer 330, a quantizer 340, and an encoder 350.

Video encoding apparatus 300 may be a personal computer or PC, notebookor laptop computer, personal digital assistant or PDA, portablemultimedia player or PMP, PlayStation Portable or PSP, or mobilecommunication terminal, smart phone or such devices, and represent avariety of apparatuses equipped with, for example, a communicationsystem such as a modem for carrying out communications between variousdevices or wired/wireless communication networks, a memory for storingvarious programs for encoding videos and related data, and amicroprocessor for executing the programs to effect operations andcontrols.

Intra predictor 310 predicts in a video the current block by using itsneighboring block, and specifically by calculating predicted pixelvalues of respective pixels in the current block with a weight valueapplied to one of more pixel values of one or more of the neighboringblocks. Here, the neighboring block may mean one or more blocks whichare compressed prior to and positioned adjacent to the current block,and specifically one or more of left side blocks of the current blockand upper side blocks of the current block.

In addition, intra predictor 310 may exclusively have a DC mode intraprediction perform the intra prediction process on the current blockwith the weight value applied, wherein the DC mode is to predict anaverage of the pixel values of the one or more adjacent pixels in theneighboring block to the current block for the pixel values of thecurrent block. In addition, the weight value may be variably applieddepending on the distances between respective pixels in the currentblock and the respective one or more adjacent pixels in the one or moreneighboring blocks.

When using the DC intra prediction mode which had typically predictedthe respective current block pixels by averaging the pixel values of theone or more relatively adjacent pixels in the neighboring block to thecurrent block, intra predictor 310 does not simply jump from averagingthe adjacent pixels' values to predicting the averaged value as thepixel values of the entire current bock pixels but does calculations ofweighted pixel values by variably setting and applying weights to thepixel values of the adjacent pixels depending on the distances betweenthe respective current block pixels and their adjacent pixels and thenaverages these weighted pixels values so as to make a prediction for thepixel values of the entire current block pixels. The “adjacent pixels”herein may refer to the pixels within the blocks that are neighboringthe current block although they may be within the neighboring blocks andnot close to the current block. Intra predictor 310 will be describedbelow in more detail referring to FIG. 4.

Subtractor 320 generates a residual signal from the difference betweenthe original pixel value of each pixel in the current block and apredicted pixel value of each pixel in the current block.

Transformer 330 transforms the residual signal generated from subtractor320 into a frequency domain. Here, transformer 330 may perform thefrequency domain transform through various transforming techniques ofvideo signals from on a temporal axis onto a frequency axis such asdiscrete cosine transform (called DCT) or wavelet transform.

Quantizer 340 performs a quantization with respect to the transformedfrequency domain residual signal from transformer 330. Encoder 350encodes the quantized residual signal from quantizer 340 into abitstream. Although various other coding techniques are unrestricted foruse in the disclosure, entropy coding may be adopted herein.

FIG. 4 is a block diagram of an electronic configuration of an intraprediction apparatus according to an aspect.

The intra prediction apparatus may be implemented by intra predictor 310when it is applied to video encoding apparatus 300 described withreference to FIG. 3. Hereinafter, the intra prediction apparatus will beconveniently and simply called intra predictor 310.

Intra predictor 310 in this aspect predicts in a video the current blockby using one or more of its neighboring blocks, and specifically itcarries out predictions with respect to pixel values of respectivepixels in a current block by performing weighted averaging of pixelvalues of one or more adjacent pixels in the one or more neighboringblocks depending on the distances between the respective pixels in thecurrent block and the respective one or more adjacent pixels.

Intra predictor 310 may comprise a weighted pixel value calculator 410and a predicted pixel value calculator 420, and it is adapted to predictthe current block by calculating predicted pixel values of therespective pixels in the current block through applying a weight valueto one or more pixel values of the one or more neighboring blocks.

Weighted pixel value calculator 410 applies the weight value to thepixel value(s) of each of the adjacent pixel(s) in the neighboringblock(s) to the current block to be encoded so as to calculate theweighted pixel values of the adjacent pixel(s).

Here, weighted pixel value calculator 410 may differently perform theweighting operation depending on calculations of the distances betweenthe positions of the respective pixels in the current block and those oftheir respectively adjacent pixels, and may calculate the weighted pixelvalues of the adjacent pixels according to the variable weightapplications depending on the pixel-to-pixel distances. Additionally, inthe weighting operation on the adjacent pixel values, weighted pixelvalue calculator 410 may apply the weight value in inverse proportion tothe calculated distances.

Specifically, weighted pixel value calculator 410 may apply a largerweight value to the neighboring block pixel value in response to acloser distance between the current block pixel and its neighboringblock pixel that implies the pixels' strong resemblance, whilecalculator 410 may apply a smaller weight value to the neighboring blockpixel value in response to a farther distance between the current blockpixel and its neighboring block pixel that implies the pixels' weakresemblance. In this way of weighting in inverse proportion to thedistances between the current block pixels and their neighboring blockpixels, it becomes possible to further reduce the disparity between thecurrent block and the prediction block with the pixel-to-pixelsimilarities considered in the intra prediction that performs in the DCprediction mode (hereinafter called DC mode prediction' in short).

Predicted pixel value calculator 420 calculates the predicted pixelvalues of the respective pixels in the current block using the weightedpixel values calculated for the adjacent pixel(s) by weighted pixelvalue calculator 410. Further, predicted pixel value calculator 420 maycalculate the predicted pixel values of the respective pixels in thecurrent block by averaging the weighted pixel values of the adjacentpixel(s) with respect to the respective pixels in the current block.

FIG. 5 is a flow diagram of an intra prediction method according to anaspect.

In the video encoding operation, video encoding apparatus 300 improvesthe encoding efficiency by reducing the encoded data amount throughencoding the difference between the original pixel value of the currentblock to be encoded and the predicted pixel value of the current blockthat is predicted, the pixel difference being a residual signal.

For this purpose, intra predictor 310 predicts the video current blockby using its neighboring block(s) as described above, and calculatesweighted pixel values of adjacent pixels with respect to respectivepixels in the current block that is the subject to encode in step S510.In other words, intra predictor 310 calculates the weighted pixel valuesof the one or more adjacent pixels by applying a weight value to therespective adjacent pixel(s) included in the neighboring block(s) (andbeing adjacent to the current block in particular).

In addition, when the weighted pixel values of the adjacent pixels arecalculated, intra predictor 310 calculates predicted pixel values of therespective pixels in the current block by using those weighted adjacentpixel values in step S520. Here, intra predictor 310 may calculate thecurrent block's respective predicted pixel values by averaging the oneor more adjacent blocks' weighted pixel values.

Intra predictor 310, in step S510 of calculating the weighted pixelvalues of the adjacent pixels with respect to the respective currentblock pixels, may count the distances between the positions of therespective current block pixels and the adjacent pixels to differentlyperform the weighting operation.

FIG. 6 is a flow diagram of a process of calculating weighted pixelvalues of adjacent pixels to respective pixels in a current blockaccording to an aspect.

Upon deciding the subject block to be encoded in a video that is thecurrent block, intra predictor 310 selects from its neighboring blocksof the video one or more adjacent pixels with respect to the currentblock in step S610. Here, the selected adjacent pixels may be one ormore of all the adjacent pixels in a left side block of the currentblock, or one or more of all the adjacent pixels in an upper side blockof the current block, or the entire adjacent pixels of the left andupper side blocks, although they are not so restricted but include allof the pixels in the current block's surrounding blocks (with right sideand lower side blocks).

With the adjacent pixel(s) selected, intra predictor 310 calculates thedistances between the positions of the respective current block pixelsand the positions of the respective adjacent pixels in step S620. Uponcalculating such pixel-to-pixel distances, intra predictor 310differently set the weight value depending on the calculated distancesin step S620 for applying the set weight value to the pixel values ofthe adjacent pixel(s) to calculate weighted values of the adjacentpixel(s) in step S630.

Specifically, when the neighboring block adjacent pixels are selected asin step S610, intra predictor 310 chooses a particular one of the entirecurrent block pixels to calculate its distances to the respectiveselected adjacent pixels. In differently setting the weight valuedepending on the respective adjacent pixels' calculated distances fromthe particular pixel and variably weighting the respective adjacentpixel values, intra predictor 310 responds to a longer pixel distancefor applying a smaller weight value and to a shorter pixel distance forapplying a larger weight value, thereby counting the similarity betweenthe particular pixel and adjacent pixels. In this way, the calculationof weighted adjacent pixel values is performed with the variableweighting according to the different pixel distances. Intra predictor310 repeatedly performs the calculation of the weighted adjacent pixelvalue with respect to the particular current block pixel for all of thepixels.

Upon completing the calculation of weighted pixel values throughdifferently weighting the adjacent pixel values by the distances of theadjacent pixels to the entire current block pixels, intra predictor 310calculates a predicted pixel value for a particular pixel of the currentblock by averaging the weighted adjacent pixel values for the particularpixel which is repeatedly performed for the entire pixels of the currentblock to calculate predicted pixel values for the entire current blockpixels.

FIG. 7 is a flow diagram of a video encoding method according to anaspect.

Video encoding apparatus 300 according to an aspect described withreference to FIG. 3 uses the intra predicting apparatus of intrapredictor 310 in the intra prediction method described with reference toFIGS. 4-6 in predicting the video current block to encode the video.

Specifically, video encoding apparatus 300 predicts the current block bycalculating the predicted pixel values of respective current pixels byapplying a weight value to the adjacent pixel value(s) in step S710,generates residual signals by calculating the differences between theoriginal pixel values of the respective current block pixels and thepredicted pixel values of the respective current block pixels in stepS720, transforms the residual signals into the frequency domaintransform through various transforming techniques such as DCT or wavelettransform in step S730, and quantizes the frequency domain-transformedresidual signals in step S740, and encodes the quantized residualsignals into a bitstream in step S750.

As described above, the encoded bitstream of video by the video encodingapparatus 300 may then be transmitted in real time or non-real-time tovideo decoding apparatuses for decoding the same into thereconstructions and reproductions via a wired/wireless communicationnetwork including the Internet, a short range wireless communicationnetwork, a wireless LAN network, WiBro (Wireless Broadband) also knownas WiMax network, and mobile communication network or a communicationinterface such as cable or USB (universal serial bus).

FIG. 8 is a block diagram of an electronic configuration of a videodecoding apparatus 800 according to an aspect.

Video decoding apparatus 800 uses adjacent block(s) to a video currentblock to predict the current block and decodes the video, and itincludes a decoder 810, inverse quantizer 820, inverse transformer 830,adder 840, and intra predictor 850.

Similar to video encoding apparatus 300 described with reference to FIG.3, video decoding apparatus 800 may be a personal computer or PC,notebook or laptop computer, personal digital assistant or PDA, portablemultimedia player or PMP, PlayStation Portable or PSP, or mobilecommunication terminal, smart phone or such devices, and represents avariety of apparatuses equipped with, for example, a communicationsystem such as a modem for carrying out communications between variousdevices or wired/wireless communication networks, a memory for storingvarious programs for encoding videos and related data, and amicroprocessor for executing the programs to effect operations andcontrols.

Decoder 810 decodes the bitstream and extracts a residual signal. Inother words, decoder 810 decodes the encoded video of the bitstream toextract the residual signal, which contains pixel information of thecurrent block in the video.

Inverse quantizer 820 inversely quantizes or performs de-quantizationwith respect to the extracted residual signal from the bitstream.Inverse transformer 830 inversely transforms the de-quantized residualsignal from inverse quantizer 820 into a time-domain domain.

Adder 840 adds predicted pixel values of respective current block pixelsfrom intra predictor 850 to the inversely transformed residual signalfrom inverse quantizer 820 to reconstruct the actual pixel value of thecurrent block.

To predict the current block, intra predictor 850 calculates thepredicted pixel values of the current block by weighting pixel values ofone or more adjacent pixels in one or more blocks which are among manypreviously decoded and reconstructed video blocks and neighboring thecurrent block.

The value for weighting may vary depending on the distances between therespective current block pixel(s) and the neighboring block adjacentpixel(s). In addition, intra predictor 850 may operate only with the DCmode prediction for the weighting to calculate the predicted pixelsvalues of the respective current block pixels.

Besides, intra predictor 850 of video decoding apparatus 800 may workthe same as or similar to intra predictor 310 of video encodingapparatus 300 in predicting the current block by using the neighboringblocks. Therefore, more detailed descriptions are omitted to avoidrepeated description.

FIG. 9 is a flow diagram of a video decoding method according to anaspect.

Video decoding apparatus 800 having received and stored the bitstreamfor the video through the wired/wireless communication network seeks toreproduce the video in accordance with a user selected or other programalgorithm in execution by predicting the video current block using itsneighboring block(s) and decoding the video and then reproducing thesame.

To this end, video decoding apparatus 800 decodes the bitstream toextract a residual signal which indicates information on the pixelvalues of the video current block in step S910. Upon extracting theresidual signal, video decoding apparatus 800 inversely quantizes theextracted residual signal in step S920, inversely transforms theinversely quantized residual signal into the time domain in step S930,predicts the current block by calculating the predicted pixel values ofthe respective current block pixels with a weight value applied to thepixel value(s) of the adjacent pixel(s) in the neighboring block(s) withrespect to the current block that the time-domain-intra-transformedresidual signal represents in step S940, and in step S950 adds thepredicted pixel values of the respective predicted current block pixelsof step S940 to the residual signals of the inversely transformedcurrent block of step S930 in order to reconstruct the original pixelvalue of the current block.

FIG. 10 is an exemplary diagram a process of predicting the currentblock by using a variable weighted value by pixel distances according toan aspect.

The intra prediction is typically performed using “multiple intraprediction modes” including a DC mode in which the averaged value ofpreviously encoded neighboring block pixels (possibly the left sideblock pixels and upper side block pixels in particular) is used topredict the pixel values of the entire current block pixels and in turnthe current block.

In FIG. 10, there are shown pixels used in the intra_(—)4×4 predictionof H.264, one of the video compression technical standard. The sixteensmall letters ‘a’ to ‘p’ represent the pixels in the current block to beencoded, and the sixteen capital letters A to M represent the previouslycompressed neighboring block pixels (i.e., adjacent pixels).

Applying the nine intra prediction modes for the typical intra_(—)4×4mode prediction described referring to FIG. 1 to performing the intraprediction with respect to the current block as shown in FIG. 10, ninedirections of predictions are made by using the pixel values of thepreviously compressed neighboring blocks A to M, and the optimumprediction mode is determined by using rate-distortion optimization orRDO among the nine intra prediction modes.

When applying the DC mode numbered 2 as shown in FIG. 1 to predictingthe pixel values of the current block pixels as shown in FIG. 10, theconventional prediction methods arrange the sixteen pixels a through pto be predicted as a single value. For example, at the first row and thefirst column pixel ‘a’ has a predicted pixel value calculated byequation 1 as with the remaining pixels ‘b’ through ‘p’. Thus, thecurrent block pixels are predicted to be commonly valued regardless oftheir positions.

a=(A+B+C+D+I+J+K+L)/8   Equation 1

As described, because such a typical method for predicting pixel valuesof the current block using the DC mode does not differentially value therelative distances of the current block pixels to the adjacent pixels (Athrough L) but predicts as the common pixel value, it has beenimpossible to predict accurate pixel values by the pixel positionswithin the current block.

Actually, though the original pixels in the current block to be encodedmay have the common value, they may also have different pixel valuesthat the closer the current block pixels are to the adjacent pixels, thestronger the similarity gets to the adjacent pixels, while the fartherthe current block pixels are to the adjacent pixels, the weaker thesimilarity gets to the adjacent pixels. Specifically, the pixel valuesof the current block pixels are more probable to be similar to the pixelvalues of the adjacent pixels as these pixel-to-pixel distances getcloser. However, the conventional current block pixel value predictionmethod using the DC mode ignores such a positional relationship betweenthe the current block pixels and the adjacent pixels resulting in theentire pixels being predicted as commonly assigned the averaged value ofthe pixels values of the adjacent pixels.

On the contrary, an aspect of the present disclosure counts thepositional relativity between the current block pixels and the adjacentpixels in predicting the pixel values of the current block pixels.

For example, when a prediction is performed on the pixels values of thepixels used the intra_(—)4×4 prediction, the pixel values are calculatedby applying a weight value to the sixteen a to p pixels' left sideblock's adjacent pixels (I, J, K, L) and their upper side blocks'adjacent pixels (A, B, C, D).

Here, the weighting value may be determined in inverse proportion tocalculations of the distances between the current block pixels to beencoded and the neighboring blocks' adjacent pixels. In other words, inpredicting the pixel values of the respective current block pixels byusing the pixel values of their neighboring block adjacent pixels (forexample, the pixel values of the left side blocks' adjacent pixels andupper side blocks' adjacent pixels), the present disclosure determinesthat a shorter distance between the current block pixels and theneighboring blocks' adjacent pixels indicates a stronger similaritybetween the current pixels and the adjacent pixels and heavily weightsthe pixel values of the neighboring blocks' adjacent pixels, whereas alonger distance between the current block pixels and the neighboringblocks' adjacent pixels is deemed representing a weaker similaritybetween the current pixels and the adjacent pixels and a smaller weightvalue is applied to the pixel values of the neighboring blocks' adjacentpixels.

In an aspect of the disclosure as described, the pixel values of therespective current block pixels are predicted by performing weightedaveraging of pixels values of the one or more adjacent pixels in theneighboring blocks to the current block depending on the distancesbetween the respective current block pixel(s) and the respectiveadjacent pixel(s). Equation 2 is to apply such a weighted averagingaccording to the pixel distance to predict the pixel values.

x=(f1×P1+f2×P2+ . . . +fn−1×Pn−1+fn×Pn)/N   Equation 2

Here, x represents the respective pixels in the current block (pixels ato p in FIG. 10), P1 through Pn are the neighboring blocks' adjacentpixels respectively (pixels A to L in FIGS. 10), and f1, f2, . . . fn−1,fn are respectively the weight values depending on the distances betweenthe respective current block pixels x and the neighboring blocks'adjacent pixels P1 through Pn. In addition, N equals to f1+f2+ . . .+fn−1+fn.

Predicting the respective current block pixels ‘a’ to ‘p’ shown in FIG.10 by using Equation 2 may be expressed by Equation 3. However, toeasily describe about predicting the pixel values of the respectivepixels, the neighboring blocks are restricted to include the currentblock's left side blocks and upper side blocks, the adjacent pixels inthe neighboring blocks are also restricted to the adjacent pixels thatbelong to the corresponding row and column as those of the current blockand such adjacent pixels are used to predict the respective currentblock pixels. Though, the present disclosure is not restricted to such alimitation but may use partial or entire adjacent pixels in the currentblock's neighboring blocks to predict the current block.

a=(A+I)/2

b=(2B+I)/3

c=(3C+I)/4

d=(4D+I)/5

e=(A+2J)/3

f=(2B+2J)/4

g=(3C+2J)/5

h=(4D+2J)/6

i=(A+3K)/4

j=(2B+3K)/5

k=(3C+3K)/6

l=(4D+3K)/7

m=(A+4L)/5

n=(2B+4L)/6

o=(3C+4L)/7

p=(4D+4L)/8   Equation 3

Here, reviewing the pixel value of pixel ‘a’, it can be determined bythe upper side block's adjacent pixel A and the left side block'sadjacent pixel I, and pixel ‘a’ is equally located to the pixels A and Iwith a space of a single pixel (basic distance). Therefore, pixel ‘a’ inthe basic distance is calculated by applying a basic weight value ‘1’ tothe pixels A and I, and assuming the entire pixels are distanced oneanother by ‘1’, ‘a’ equals to (1×A+1×I)/(1+1)=(A+I)/2.

In addition, reviewing the pixel value of pixel ‘g’, it can bedetermined by the upper side block's adjacent pixel C and the left sideblock's adjacent pixel J, and pixel ‘g’ is distanced by two pixels(basic distance x 2) from pixel C and three pixels (basic distance×3)from pixel J. Therefore, the weight value for calculating the pixelvalue of pixel ‘g’ is assigned ‘2’ for pixel C and ‘3’ for pixel J, andassuming the entire pixels are distanced one another by ‘1’, ‘g’ equalsto (3×C+2×J)/(3+2)=(3C+2J)/5.

As described, in performing the DC mode prediction by using the pixelvalues of the neighboring block's adjacent pixels with the weight valueconsidered according to the distances between the current block pixelsand the neighboring blocks' adjacent pixels, no more the predicted pixelvalues of the current block are determined en bloc as has been typicalbut rather they can be predicted into different predicted pixel valuesby the positions of the respective current block pixels.

In the example aspect described with reference to FIG. 10, therespective single pixels from the current block's left side block andupper side block are used to calculate the predicted pixel value of thecurrent block. However, the present disclosure is not necessarilyrestricted to this example but may use a part or the entirety of thesixteen pixels a to p in the current block's left side block and upperside block to obtain the predicted value of a single pixel in thecurrent block, and additionally use current block's other partial orentire surrounding blocks' pixel value(s) partially or entirely toobtain the predicted value of the single pixel in the current block.

This prediction of the current block by using the pixel values of theadjacent pixels with the variable weight value incorporated depending onthe distances between the current block's pixels and the neighboringblocks' adjacent pixels is not only performed in video encodingapparatus 300 but equally performed in video decoding apparatus 800 byintra predictors 310 and 850.

As described, when video encoding apparatus 300 and video decodingapparatus 800 perform the DC mode predictions and upon determining thecurrent block went through the intra prediction in the DC mode, eitherthe intra_(—)4×4 prediction or the intra_(—)16×16 prediction counts thedistance-based weight value in predicting the pixel value of the currentblock to obtain the optimal predicted pixel value though finelyapproximating the predicted current block to the original current block,and thereby reducing the differential value between the original currentblock and the predicted one which keeps up the intra predictionperformance while improving the video compression efficiency andreducing the amount of data to be transmitted.

Although the above description is presented with video encodingapparatus 300 and video decoding apparatus 800 implemented asindependent devices, they may be implemented in a single unit. Thecomponents of video encoding apparatus 300 and video decoding apparatus800 of encoder 350, decoder 810, quantizer 340, inverse quantizer 820,transformer 330, inverse transformer 830, subtractor 320, adder 840, andintra predictors 310 and 850 may be independent hardware componentsimplemented respectively to include memories for storing programs andmicroprocessors for executing the programs to realize their functions,although they may be implemented as program modules for carrying out therespective functions within the hardware of video encoding apparatus 300and video decoding apparatus 800.

In addition, if video encoding apparatus 300 and video decodingapparatus 800 are implemented in a single unit, the counter functioningcomponent pairs of encoder 350 and decoder 810, quantizer 340 andinverse quantizer 820, transformer 330 and inverse transformer 830,subtractor 320 and adder 840, and intra predictors 310 and 850 may beimplemented in singular program modules, respectively.

Although exemplary aspects of the disclosure have been described forillustrative purposes, those skilled in the art will appreciate thatvarious modifications, additions and substitutions are possible, withoutdeparting from the essential characteristics of the disclosure.Therefore, the aspects disclosed in the present disclosure have beendescribed not for limiting the technical idea of the disclosure, but forexplaining the disclosure. Accordingly, the scope of the disclosureshould be interpreted by the appended claims, which by themselves andtheir equivalents are the claim scope of the disclosure.

INDUSTRIAL APPLICABILITY

As described above, the present disclosure is applicable to a method andapparatus for determining an intra prediction mode, and a method andapparatus for encoding/decoding video using the same for predicting avideo current block from its neighboring blocks toward its encoding andreconstruction in a way to minimize the difference between the originalcurrent block and the predicted current block and thereby providing moreaccurate prediction of the current block to be encoded and reducing theerror of the predicted block to improve the coding efficiency and thusthe compression efficiency.

1. An intra prediction apparatus comprising: a calculator forcalculating weighted pixel values by variably applying weights to pixelvalues of respective one or more adjacent pixels in a neighboring blockto a current block depending on calculations of the distances betweenrespective pixels in the current block and the respective one or moreadjacent pixels; and a calculator for calculating predicted pixel valuesof the respective pixels in the current block by averaging the weightedpixel values of the one or more adjacent pixels with respect to therespective pixels in the current block.
 2. The intra predictionapparatus of claim 1, wherein the neighboring block is one or more of aleft side block of the current block and an upper side block of thecurrent block.
 3. The intra prediction apparatus of claim 1, wherein theweighted pixel value calculator applies the weights in inverseproportion to the distances.
 4. An intra prediction method comprising:selecting one or more adjacent pixels in a neighboring block to acurrent block in a video; calculating the distances between respectivepixels in the current block and the respective one or more adjacentpixels; calculating weighted pixel values by variably setting andapplying weights to pixel values of the respective one or more adjacentpixels depending on the distances; and calculating predicted pixelvalues of the respective pixels in the current block by averaging theweighted pixel values of the one or more adjacent pixels with respect tothe respective pixels in the current block.
 5. The intra predictionmethod of claim 4, wherein the step of selecting adjacent pixelscomprises: selecting one or more of a left side block of the currentblock and an upper side block of the current block in the video as theneighboring block; and selecting one or more adjacent pixels to thecurrent block from the one or more of the left side block and the upperside block.
 6. The intra prediction method of claim 4, wherein theweights are set in inverse proportion to the distances.
 7. A videoencoding apparatus comprising: an intra predictor for predicting acurrent block by calculating weighted pixel values respectively byvariably applying weights to pixel values of one or more adjacent pixelsin a neighboring block to the current block depending on the distancesbetween respective pixels in the current block and the respective one ormore adjacent pixels, and calculating predicted pixel values of therespective pixels in the current block through averaging the weightedpixel values of the one or more adjacent pixels with respect to therespective pixels in the current block; a subtractor for generating aresidual signal by calculating a difference between the original pixelvalue of the respective pixels in the current block and the predictedpixel value of the respective pixels in the current block; a transformerfor transforming the residual signal into a frequency domain; aquantizer for quantizing the transformed residual signal; and an encoderfor encoding the quantized residual signal into a bitstream.
 8. Thevideo encoding apparatus of claim 7, wherein the intra predictor appliesthe weights when an intra prediction is performed by using an intraprediction mode for predicting an average of the pixel values of the oneor more adjacent pixels in the neighboring block for the pixel values ofthe respective pixels in the current block.
 9. The video encodingapparatus of claim 7, wherein the intra prediction mode is a directcurrent or DC mode.
 10. A video encoding method comprising: calculatingweighted pixel values respectively by applying weights to pixel valuesof one or more adjacent pixels in a neighboring block to a current blockdepending on the distances between respective pixels in the currentblock and the respective one or more adjacent pixels; intra predictingthe current block by calculating predicted pixel values of therespective pixels in the current block through averaging the weightedpixel values of the one or more adjacent pixels with respect to therespective pixels in the current block; generating a residual signal bycalculating a difference between the original pixel value of therespective pixels in the current block and the predicted pixel value ofthe respective pixels in the current block; transforming the residualsignal into a frequency domain; quantizing the transformed residualsignal; and encoding the quantized residual signal into a bitstream. 11.A video decoding apparatus comprising: a decoder for decoding abitstream to extract a residual signal; an inverse quantizer forinversely quantizing the extracted residual signal; an inversetransformer for inversely transforming the inversely quantized residualsignals into a time domain; an intra predictor for predicting a currentblock by calculating weighted pixel values respectively by applyingweights to pixel values of one or more adjacent pixels in a neighboringblock to the current block depending on the distances between respectivepixels in the current block and the respective one or more adjacentpixels, and calculating predicted pixel values of the respective pixelsin the current block through averaging the weighted pixel values of theone or more adjacent pixels with respect to the respective pixels in thecurrent block; and an adder for calculating a sum of the inverselytransformed residual signal and the predicted pixel values of therespective pixels in the current block in order to reconstruct originalpixels in the current block.
 12. The video decoding apparatus of claim11, wherein the intra predictor applies the weights when an intraprediction is performed by using an intra prediction mode for predictingan average of the pixel values of the one or more adjacent pixels in theneighboring block for the pixel values of the respective pixels in thecurrent block.
 13. The video decoding apparatus of claim 12, wherein theintra prediction mode is a direct current or DC mode.
 14. A videodecoding method comprising: extracting a residual signal from abitstream by decoding thereof; inversely quantizing the extractedresidual signal; inversely transforming the inversely quantized residualsignal into a time domain; calculating weighted pixel valuesrespectively by applying weights to pixel values of one or more adjacentpixels in a neighboring block to a current block depending on thedistances between respective pixels in the current block and therespective one or more adjacent pixels; intra predicting the currentblock by calculating predicted pixel values of the respective pixels inthe current block through averaging the weighted pixel values of the oneor more adjacent pixels with respect to the respective pixels in thecurrent block; and reconstructing original pixels in the current blockby calculating a sum of the inversely transformed residual signal andthe predicted pixel values of the respective pixels in the currentblock.
 15. An intra prediction apparatus for predicting pixel values ofrespective pixels in a current block by performing weighted averaging ofpixels values of one or more adjacent pixels in a neighboring block tothe current block depending on the distances between the respectivepixels in the current block and the one or more adjacent pixels.